﻿using RayDen.Library.Core;
using RayDen.Library.Core.Primitives;

namespace RayDen.Library.Entity.Scene
{
    public class VolumeMaterialInfo
    {
        public RgbSpectrum Absorbtion;
        public RgbSpectrum Inscattering;
        public RgbSpectrum Outscattering;

        public MediumInfo MediumInfo;

        public TextureInfo Albedo;

        public TextureInfo Density;

        public string Name { get; set; }

    }


    public class VolumeMaterial
    {
        public VolumeMaterialInfo MaterialInfo;

        public virtual float Phase(float wi, float wo)
        {
            return MathLab.INV4PI;
        }

        public virtual void Sample()
        {
            
        }
    }
}